
$("input[name='date']").datetimepicker({  
    format: 'YYYY-MM-DD HH:mm',  
    locale: moment.locale('zh-cn')
});

function showData() {
    $('#examList').bootstrapTable('refresh');
}

// 加载表格
$('#examList').bootstrapTable({
	url:'exam/findPage', // 服务器数据的加载地址
	method: 'get',  
    dataType: "json",  
    striped: true,// 设置为 true 会有隔行变色效果
    undefinedText: "空",// 当数据为 undefined 时显示的字符
    pagination: true, // 分页
    toolbar: '#toolbar',
   // paginationLoop:true,//设置为 true 启用分页条无限循环的功能。
    // showToggle: "true",//是否显示 切换试图（table/card）按钮
    // showColumns: "true",//是否显示 内容列下拉框
    showRefresh: true,// 是否显示刷新按钮
    pageNumber: 1,// 如果设置了分页，首页页码
    // showPaginationSwitch:true,//是否显示 数据条数选择框
    pageSize: 12,// 如果设置了分页，页面数据条数
    // pageList: [5, 10, 20, 40], //如果设置了分页，设置可供选择的页面数据条数。设置为All 则显示所有记录。
    paginationPreText: '‹',// 指定分页条中上一页按钮的图标或文字,这里是<
    paginationNextText: '›',// 指定分页条中下一页按钮的图标或文字,这里是>
    // singleSelect: false,//设置True 将禁止多选
    // search: true, //显示搜索框
    data_local: "zh-US",// 表格汉化
    sidePagination: "server", // 服务端处理分页
    queryParams: function (params) {
    	var str = $('#search').val();
    	var course_id = $('#search_course option:selected').val();
        return {
        	str:str,
        	course_id:course_id,
			page:(params.offset)/(params.limit)+1,
            limit: params.limit,
            sort:params.sort,
            dir:params.order,
            paper_title:$("#search_paper_title").val()
        };
    },
    idField: "id",// 指定主键列
    columns: [{
    	checkbox:true
    },{  
        field: 'id',  
        title: 'ID',
        /* visible:false */
    }, {  
        field: 'num',  
        title: '编号'
    }, {  
        field: 'name',  
        title: '标题'
    }, {
        title: '所属课程',
        formatter : function(value,row,index){
        	if(row.course!=null){
        		return row.course.name;
        	}else{
        		return null;
        	}
        }
    },{  
        field: 'location',
        title: '考试地点'
    },{
        title: '考试时间',
        formatter : function(value,row,index){
        	if(row.paper!=null){
        		var date = new Date(row.date);
        		return date.getFullYear()+'-'+(date.getMonth()+1)+'-'+date.getDate()+' '+date.getHours()+':'+date.getMinutes();
        	}else{
        		return null;
        	}
        }
    },{  
        title: '考试时长',
        formatter : function(value,row,index){
        	if(row.paper!=null){
        		return row.paper.time;
        	}else{
        		return null;
        	}
        }
    },{  
        title: '状态',
        formatter : function(value,row,index){
        	if(row.paper!=null){
        		var date = new Date(row.date);
        		date.setMinutes(date.getMinutes()+row.paper.time);
        		var now = new Date();
        		if(now>=date){
        			return "<font color='skyblue'>已结束</font>";
        		}
        		else if(now>row.date&&now<date){
        			return "<font color='green'>进行中</font>";
        		}else{
        			return "未开始";
        		}
        	}else{
        		return null;
        	}
        }
    },{  
        title: '试卷',
        formatter : function(value,row,index){
        	if(row.paper!=null){
        		return '编号：'+row.paper.num+' | 标题：'+row.paper.title;
        	}else{
        		return null;
        	}
        }
    },{
        title: '操作',
        formatter : function(value,row,index){
        	var r = '<a class="edit btn btn-info btn-xs fa fa-pencil" title="edit"></a>&nbsp;'+
        			'<a class="remove btn btn-danger btn-xs fa fa-trash-o" title="remove"></a>';
        	return r;
        },
		events:{
			'click .edit':function(e, value, row, index){
				$('#form1 :input[name="id"]').val(row.id);
				$('#form1 :input[name="num"]').val(row.num);
				$('#form1 :input[name="name"]').val(row.name);
				$('#form1 :input[name="location"]').val(row.location);
				
				$('#sele_course').selectpicker('val', row.course.id);

				$("#sele_paper").html('');
			    $("#sele_paper").selectpicker({  
			        noneSelectedText : '请选择试卷'  
			        });
			    // 下拉数据加载
			    var course_id = $('#sele_course option:selected').val();
			    $.ajax({
			    	//data:subjId
			        type : 'get',  
			        url :"paper/findListBycourse",  
			        dataType : 'json',
			        data:{course_id:course_id},
			        success : function(datas) {// 返回list数据并循环获取
			            var select = $("#sele_paper");  
			            for (var i = 0; i < datas.length; i++) {  
			            	var select = $("#sele_paper");  
			                for (var i = 0; i < datas.length; i++) {  
			                    select.append("<option value='"+datas[i].id+"'>编号:"+datas[i].num+" | 标题:"+ datas[i].title + "</option>");  
			                }
			            }
			            $('#sele_paper').selectpicker('refresh');
			            $('#sele_paper').selectpicker('val', row.paper.id);
			        }  
			    });

				$('#myModal').modal('show');
			},
			'click .remove':function(e, value, row, index){
				Modal.confirm(
					    {
					        msg: "确定要删除课程考试？"
					    })
					    .on( function (e) {
					        if(e){
					        	$.ajax({
					        		type:'POST',
					        		url:'exam/delete',
					        		data:{id:row.id},
					        		dataType:'json',
					        		success:function(data){
					        			Modal.alert({msg:data.msg});
					        			if(data.success){
					        				$('#examList').bootstrapTable('remove',{
					        		    		field:'id',
					        		    		values:[parseInt(row.id)]
					        		    	});
					        			}
					        			
					        		},
					        		error:function(){
					        			Modal.alert({msg:'出错！'});
					        		}
					        	});
					        }
					    });
			}
		}
    }]
      
});

/* 删除事件 */

/*初始化
 * 
 */
$(function() {  
    $("#sele_course").selectpicker({  
        noneSelectedText : '请选择课程'  
        });  
  
        $(window).on('load', function() {  
        	$('#sele_course').selectpicker('refresh');
            $('#sele_course').selectpicker('val', '');
        });  
  
        // 下拉数据加载
    $.ajax({  
        type : 'get',  
        url :"teacher/getCourseList",  
        dataType : 'json',  
        success : function(datas) {// 返回list数据并循环获取
            var select = $("#sele_course");  
            for (var i = 0; i < datas.length; i++) {  
                select.append("<option value='"+datas[i].id+"'>"  
                        + datas[i].name + "</option>");  
            }  
            $('#sele_course').selectpicker('refresh');
            $('#sele_course').selectpicker('val', '');
        }  
    });
    //按课程查找
    $("#search_course").selectpicker({  
        noneSelectedText : '按课程查找'  
        });  
  
        $(window).on('load', function() {  
        	$('#search_course').selectpicker('refresh');
            $('#search_course').selectpicker('val', '');
        });  
  
        // 下拉数据加载
    $.ajax({  
        type : 'get',  
        url :"teacher/getCourseList",
        dataType : 'json',  
        success : function(datas) {// 返回list数据并循环获取
            var select = $("#search_course");  
            for (var i = 0; i < datas.length; i++) {  
                select.append("<option value='"+datas[i].id+"'>"  
                        + datas[i].name + "</option>");  
            }  
            $('#search_course').selectpicker('refresh');
            $('#search_course').selectpicker('val', '');
        }  
    });
});
/* 创建考试提交 */
$("#form1").submit(function(event){
	/*private Long id;
	private String num;
	private Date date;
	private String location;
	private Course course;
	private Paper Paper;*/
	var exam = {};
	
	var id = $("input[name='id']").val();
	var num = $("input[name='num']").val();
	var name = $("input[name='name']").val();
	var date = new Date($("input[name='date']").val());
	var location = $("input[name='location']").val();
	
	var courseId = $("#sele_course").find("option:selected").val();
	var paperId = $("#sele_paper").find("option:selected").val();
	
	exam = {
			"id":id,
			"name":name,
			"num":num,
			"date":date,
			"location":location,
			"course":{"id":courseId},
			"paper":{"id":paperId}
			};
	var result = JSON.stringify(exam);//string类型
	console.log(result)
	$.ajax({
		url:'exam/save',
		type:'post',
		dataType:'json',
		data:{exam:result},
		success:function(data){
			Modal.alert({msg:data.msg});
			if(data.success){
				$('#search_course').selectpicker('val', '');
				$('#search').val('');
				showData();
				$('#myModal').modal('hide');
			}
		},
		error:function(){
			alert("出错!");
		}
	});
	
	return false;
});


/*选择科目级联加载教师列表*/
function seleCourse(){
	$("#sele_paper").html('');
    $("#sele_paper").selectpicker({  
        noneSelectedText : '请选择试卷'  
        });
    // 下拉数据加载
    var course_id = $('#sele_course option:selected').val();
    $.ajax({
    	//data:subjId
        type : 'get',  
        url :"paper/findListBycourse",
        dataType : 'json',
        data:{course_id:course_id},
        success : function(datas) {// 返回list数据并循环获取
            var select = $("#sele_paper");  
            for (var i = 0; i < datas.length; i++) {  
                select.append("<option value='"+datas[i].id+"'>编号:"+datas[i].num+" | 标题:"+ datas[i].title + "</option>");  
            }
            $('#sele_paper').selectpicker('refresh');
            $('#sele_paper').selectpicker('val', '');
        }  
    });
}
//
$('#myModal').on('hide.bs.modal', function () {
	// 关闭modal执行一些动作...初始化modal
	$('#form1')[0].reset();
	$('input[name="id"]').val('');
	$('#sele_course').selectpicker('val', '');
	seleCourse();
});
//查找控制
function clearSearch(){
	$('#search_course').selectpicker('val', '');
	$('#search').val('');
	$('#examList').bootstrapTable('refresh');
}
function search(){
	$('#examList').bootstrapTable('refresh');
}
